无需编写脚本的API测试自动化实践
由于API测试需要测试者具备更多开发所具有的技术能力;测试脚本类资产的维护随着代码的变更,也成为一个问题。基于模块的测试自动化平台,用图形化的方法描述和被测对象的交互接口的技术信息,无需编写脚本的API测试自动化实践,快速的创建API自动化测试。

挑战

大多数现代软件系统都是基于面向服务的体系结构构建的。例如,常见的基于Web服务的B/S结构的服务,和更传统的C/S结构的服务。API应用程序接口层封装了组织业务所需要的功能,服务于用户界面使用。用户界面业务功能的分离从根本上改变了用户如何进行测试测试可以在生成API接口后就开始

由于API测试需要测试者具备更多开发所具有的技术能力;测试脚本类资产的维护随着代码的变更,也成为一个问题;开发和测试两个部门间的协调,技术技能和业务知识之间的综合能力,都是需要面对处理的关键问题。对大多数组织来说,这项测试工作的自动化,仍然是一个挑战。

 基于模块的测试自动化





















基于模块的测试自动化平台,打破了这一技术障碍,通过模块,用图形化的方法描述和被测对象的交互接口的技术信息,并将其表现为对
测试人员或业务人员,更加直观,容易理解的模块,快速的创建API自动化测试,进而帮助组织不需要编写更多脚本,就可以将自动化测试,从用户界面,扩展到基于API接口的自动化测试,从而帮助测试团队更早的开展自动化测试,并实现跨Web界面、手机、SAP等多种技术平台的,端到端的集成系统测试场景。

好处

无需脚本测试API

完全支持包括SOAP和REST等流行的Web服务标准之内的多种协议接口API的测试对于采用WSDLWADL、Swagger、OData、RAML、XSD、JSON和SAP描述的文件或URI通一资源标志符,可以使用扫描程序,就可以自动生成基于图形界面的测试基础模块,使用基于模块的测试自动化框架

 

易于维护API测试资产以应对变更

之前的API测试都是通过手动编写脚本完成的。这意味着开发和测试人员花了数小时编写测试用例脚本,然后每当API被更新时,又花费数小时维护脚本。API扫描功能不仅大大缩短了测试创建时间,而且几乎取消了维护时间,使应用程序开发更快,更新周期更短。

改进开发人员和测试人员的协作

开发人员对正在开发的API执行功能检查时,可以使用免费的API扫描工具与服务接口进行交互,同时,可以捕获服务请求和响应消息接口并保存成文件,为后期测试提供帮助。

测试人员可以使用这一文件,自动转换为业务可读的基于模块的自动化测试框架。

这一方面,使得开发人员更容易参与到测试过程;同时,为非技术测试人员和业务分析人员提供直观的界面,帮助测试团队可以轻松地审查和扩展测试用例,而无需担心JSONXMLxPath等太多技术概念。

轻松维护API端到端测试

基于模块的测试自动化平台帮助所有测试人员快速创建和维护API测试,这些测试可以作为Web界面、手机、SAP等端到端测试场景的构建块重用。

基于模块的测试自动化平台在所有类型自动化测试背后,使用相同的,简单的,无脚本的测试自动化解决方案,不需要复杂的API编程。

重用API测试实现服务虚拟化

API测试可以自动转换为服务虚拟化资产,以便对敏捷开发所需的关键服务虚拟化资产进行简单管理。

SoapUI测试迁移到企业API测试

将您零碎的SoapUI项目转换为基于模块的自动化测试平台的API测试,以实现重用,极大地提高了维护、效率和协作。

基于模块的自动化测试平台,通过综合测试数据生成、风险覆盖优化、服务虚拟化和持续测试分析,来扩展API测试功能,优化API测试策略。

广泛的API技术支持

大多数API测试工具只支持REST和SOAP标准。对于拥有数百个集成系统的企业公司来说,这种有限的支持是不够的。基于模块的自动化测试平台支持整个API过程,从Web API,到真正的端到端测试的传统支持协议。

 


























实现方法

基于模块,无需编码的API测试技术,不但支持RESTSOAP这些Web API,而且支持等多端到端系统测试所需的传统协议。我们在此仅以常见的基于REST 的Web 服务的API接口测试作为例子,来描述使用工具扫描实现自动化API测试的方式。
API测试大致分为两个阶段,扫描API形成测试模块,然后使用测试模块,描述的测试步骤,组成测试用例。如下图所示,